home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 5 / Apprentice-Release5.iso / Source Code / Libraries / DCLAP 6d / dclap6d / DBio / DSeqList.h < prev    next >
Text File  |  1996-07-05  |  1KB  |  54 lines

  1. // DSeqList.h
  2.  
  3. #ifndef _DSEQLIST_
  4. #define _DSEQLIST_
  5.  
  6. #include <DList.h>
  7. //#include "DSeqFile.h"
  8.  
  9. class DFile;
  10. class DSequence;
  11.  
  12. class DSeqList : public DList //, public DSeqFile
  13. {
  14. public:
  15.     enum Sorts {
  16.         kSortByItem = 0,
  17.         kSortByName = 1,
  18.         kSortBySize = 2,
  19.         kSortByKind = 3,
  20.         kSortByDate = 4
  21.         };
  22.     enum DistanceCorrection { DCnone, DCjukes, DColsen };
  23.     short fSortOrder;
  24.     static short gMinCommonPercent, gMinORFsize;
  25.  
  26.     DSeqList();
  27.     virtual ~DSeqList();
  28.  
  29.     virtual Boolean IsEmpty();
  30.     virtual DSequence* SeqAt( short index) { return (DSequence*) this->At( index); }
  31.  
  32.     virtual void DoWrite( DFile* aFile, short format); //ostream os
  33.     virtual void DoWrite( char* aFileName, short format); 
  34.     
  35.     virtual Boolean SortList(Sorts sortorder);
  36.     virtual void AddNewSeq();
  37.     virtual void ClearSelections();
  38.     
  39.     virtual short ZeroOrigin();
  40.     virtual void MakeConsensus();
  41.     virtual DSequence* Consensus();   
  42.     virtual short ConsensusRow();  
  43.     virtual DSequence* FindNamedSeq(char* name, Boolean respectCase = true);
  44.     virtual char* FindCommonBases( short minCommonPerCent, char*& firstCommon);
  45.     virtual char* Distances( short correct = DCnone, Boolean doSimilarity = false);
  46.     virtual char* Similarities( short correct = DCnone) 
  47.                                               { return Distances( correct, true); }
  48. };
  49.  
  50.  
  51. extern short gLinesPerSeqWritten;
  52.  
  53. #endif
  54.